#ifndef     __NTC_SENSOR_H
#define     __NTC_SENSOR_H

#include "../../utils/nocopyable.h"
#include "../../utils/object.h"
#include <stdint.h>

namespace driver {

class NtcSensor : private utils::NoCopyable {

public:
    NtcSensor();

    void read_all();

    inline bool is_all_ok() const {
        return m_steam_ok && m_water_ok;
    }

    inline bool is_water_ok() const {
        return m_water_ok;
    }

    inline bool is_steam_ok() const {
        return m_steam_ok;
    }

    inline int16_t water_temp() {
        return m_water_temp;
    }

    inline int16_t steam_temp() {
        return m_steam_temp;
    }

private:
    bool m_water_ok = true;
    bool m_steam_ok = true;
    int16_t m_water_temp;
    int16_t m_steam_temp;
};

inline utils::Object<NtcSensor> ntcSensor;

}

#endif
